<?php
/**
 * 单链表的结点
 * 这样的结点只有一个指针，即指向直接后续
 */

namespace Xxb\XxbPhpAlgo;

class SingleLinkedListNode
{
    /**
     * 结点中的数据
     * @var mixed|null
     */
    private $value;

    /**
     * @return mixed|null
     */
    public function getValue()
    {
        return $this->value;
    }

    /**
     * @param mixed|null $value
     */
    public function setValue($value)
    {
        $this->value = $value;
    }

    /**
     * @return SingleLinkedListNode|null
     */
    public function getNext()
    {
        return $this->next;
    }

    /**
     * @param SingleLinkedListNode|null $next
     */
    public function setNext($next)
    {
        $this->next = $next;
    }

    /**
     * 下一个结点指针
     * @var self|null
     */
    private $next;

    public function __construct($value = null, $next = null)
    {
        $this->setValue($value);
        $this->setNext($next);
    }
}
